package cn.myjerry.io.byteIO;

import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.io.InputStream;

/**
 * 文件的读取
 * 1、建立联系	File对象
 * 2、选择流		文件输入流 InputStream	FileInputStream
 * 3、操作	byte[] car = new byte[1024] + read + 读取大小
 * 	 输出
 * 4、释放资源
 * @author Jerry
 */
public class Demo01 {
	public static void main(String[] args) {
		String path = "/Users/zpon/Desktop/test.txt";
		// 1、建立联系	File对象
		File src = new File(path);
		// 2、选择流		文件输入流 InputStream	FileInputStream
		InputStream is = null;	// 提升作用域
		try {
			is = new FileInputStream(src);
			// 操作不断读取缓冲数组
			byte[] car = new byte[1024];
			int len = 0;		// 接受实际大小
			// 循环读取
			while(-1 != (len = is.read(car))) {
				// 输出	字节数组转成字符串
				String info = new String(car, 0, len);
				System.out.println(info);
			}
		} catch (FileNotFoundException e) {
			e.printStackTrace();
			System.out.println("文件不存在");
		} catch (IOException e) {
			e.printStackTrace();
			System.out.println("文件读取失败");
		} finally {
			if(null == is) {
				try {
					is.close();
				} catch (IOException e) {
					e.printStackTrace();
					System.out.println("关闭文件输入流失败");
				}
			}
		}
	}
}
